// set 的基本语法，通过new Set()创建的新伪数组具有
let Arr = [1, 2, 3, 4, 4, 5, 5, 6, 3]

// 1. 去重,直接new 一个，利用set对象的唯一属性
let set1 = new Set(Arr)
console.log(set1);
// 2. 返回数组个数
console.log(Arr.size);// 普通数组没有size这个方法
console.log(set1.size);// 使用set的size方法
// 3. 添加元素
set1.add(7)
console.log(set1);
// 4. 删除元素
set1.delete(7)
console.log(set1);
// 5. 检测数组中某元素是否存在
console.log(set1.has(3));
console.log(set1.has(7));
// 6. 清除所有元素
set1.clear()
console.log(set1);
// 7. 获得除重后的数组
// 很巧妙，直接对new Set()返回的伪对象（类似于数组的集合）进行解构，放入新的数组中
let set2 = [...new Set(Arr)]
console.log(set2);

// 8. 字符串去重
let STR = 'abcdadcfc'

let str = [...new Set(STR)].join('')
console.log(str);
// 9. 数组自带的from方法可以从类数组对象中获取数组
let arr = Array.from(str)
console.log(arr);




